A Contextual Equivalence Checker for IMJ ∗
نویسندگان
چکیده
We present CONEQCT: a contextual equivalence checking tool for terms of IMJ∗, a fragment of Interface Middleweight Java for which the problem is decidable. Given two, possibly open (containing free identifiers), terms of the language, the contextual equivalence problem asks if the terms can be distinguished by any possible IMJ context. Although there has been a lot of prior work describing methods for constructing proofs of equivalence by hand, ours is the first tool to decide equivalences for a non-trivial, object-oriented language, completely automatically. This is achieved by reducing the equivalence problem to the emptiness problem for fresh-register pushdown automata. An evaluation demonstrates that our tool works well on examples taken from the literature. A dedicated webpage for the tool is: http://bitbucket.org/sjr/coneqct.
منابع مشابه
Game Semantic Analysis of Equivalence in IMJ
Using game semantics, we investigate the problem of verifying contextual equivalences in Interface Middleweight Java (IMJ), an imperative object calculus in which program phrases are typed using interfaces. Working in the setting where data types are non-recursive and restricted to finite domains, we identify the frontier between decidability and undecidability by reference to the structure of ...
متن کاملPractical aspects of telehealth: financial considerations.
The second in a series of articles about the practical aspects of telehealth, this paper includes information and a case history on the cost-benefits for patients and practitioners using telehealth. The case history demonstrates that telehealth can save travel time for patients, carers and specialists, and can reduce out-of-pocket expenses. The practical aspects of telehealth article series con...
متن کاملA Co-contextual Type Checker for Featherweight Java (incl. Proofs)
This paper addresses compositional and incremental type checking for object-oriented programming languages. Recent work achieved incremental type checking for structurally typed functional languages through co-contextual typing rules, a constraint-based formulation that removes any context dependency for expression typings. However, that work does not cover key features of object-oriented langu...
متن کاملA Co-contextual Type Checker for Featherweight Java
This paper addresses compositional and incremental type checking for object-oriented programming languages. Recent work achieved incremental type checking for structurally typed functional languages through co-contextual typing rules, a constraint-based formulation that removes any context dependency for expression typings. However, that work does not cover key features of object-oriented langu...
متن کاملContext Sensitive Query Correction Method for Query-Based Text Summarization
Contextual spell correction is very important for real word error correction. It gives the correct word for an incorrect word in a particular sentence. The traditional spell checker can correct those misspelled words which are not present in dictionary but here we try to develop a spell checker which can give appropriate word on the basis of the contextual meaning of the sentence. This spell ch...
متن کامل